home *** CD-ROM | disk | FTP | other *** search
/ Ham Radio 2000 / Ham Radio 2000.iso / ham2000 / tcp_ip / gp / 7plus.eng < prev    next >
Text File  |  1992-01-02  |  36KB  |  989 lines

  1.  
  2.  
  3.  
  4.  
  5.         .*****************************************************************
  6.         ***                                                             ***
  7.         *** 7PLUS -  A new and efficient coder/decoder for transfer of  ***
  8.         ***          any kind of data through store & forward nets.     ***
  9.         ***                                                             ***
  10.         *** Version 1.50     Axel Bauda, DG1BBQ @DB0CL       (09/25/91) ***
  11.         ***                      Potsdamer Str.43                       ***
  12.         ***                   W-2850 Bremerhaven 21                     ***
  13.         ***                         Germany                             ***
  14.         ***                                                             ***
  15.         *** 7PLUS is Public Domain. It may be copied freely. The DOC-   ***
  16.         *** files and 7PLUS.C must be included! This document is valid  ***
  17.         *** for the PC-version as well as for the AMIGA-, ATARI_ST-     ***
  18.         *** and UNIX-versions                                           ***
  19.         ***                                                             ***
  20.          *****************************************************************
  21.  
  22.  
  23.         The not-reading-the-manual-phobia (antidocphobia):
  24.         ==================================================
  25.  
  26.         I always happens again. People asks me questions that were already
  27.         dealt with in this manual.
  28.  
  29.         I know, it's hard for some people to read the manual thoroughly,
  30.         but it saves me a lot of unnecessary work. So in case of trouble,
  31.         read the manual very carefully.
  32.  
  33.         I have gone through great length to make this manual as detailed as
  34.         possible. However, I may have forgotten a few points here an there.
  35.  
  36.         Nobody's perfect......
  37.  
  38.         I cannot supply a MS_DOS/ATARI/AMIGA or UNIX course in this manual.
  39.         Therefore you should be familiar with the basics of your computer.
  40.  
  41.         Also, you should be familiar with the handling of your terminal
  42.         program!
  43.  
  44.  
  45.         Preface:
  46.         ========
  47.  
  48.         All present coders like 7BIT, RADIX95, UUENCODE and SEVEN do not
  49.         consider the fact, that files can get corrupted upon transfer in
  50.         packet radio nets. Up to now, corrupted files had to be repeatedly
  51.         sent to get them trough correctly, if ever.
  52.  
  53.         This is where 7PLUS gets in by automating the repair of corrupted
  54.         files as far as possible and eliminating the need of retransmission
  55.         of entire files.
  56.  
  57.         Automation and reliable recognition of corrupted lines are made
  58.         possible by adding cyclic redundancy checking and line numbering to
  59.         each line of code, therefore allowing exact protocolling of errors.
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.         Let's say OM A has encoded TEST.TXT to TEST.7PL and uploads it to a
  73.         BBS.
  74.  
  75.         OM B downloads it and tries to decode it.
  76.  
  77.         ..Unfortunately, the file has been corrupted....
  78.  
  79.         7PLUS detects the faulty lines and creates an error report called
  80.         TEST.ERR.
  81.  
  82.         OM B sends TEST.ERR to OM A, so he can create the correction file
  83.         TEST.COR with the help of 7PLUS.
  84.  
  85.         OM A then uploads TEST.COR to the BBS.
  86.  
  87.         Providing OM B received TEST.COR uncorrupted (in that case TEST.COR
  88.         would have to be resent), he can have the corrupted TEST.7PL
  89.         regenerated and decode it successfully.
  90.  
  91.         In case TEST.7PL contains more errors than are covered in TEST.COR,
  92.         only a new TEST.ERR needs to be generated and to repeat the above
  93.         procedure. That's still much more effektive than resending the
  94.         entire file.
  95.  
  96.         I admit, the whole concept may sound somewhat complicated at first
  97.         glimpse. It isn't really. The described procedure is just the
  98.         realization of the three basic steps:
  99.  
  100.         'Dectect errors',
  101.         'Tell Originator about it and get correction info',
  102.         'Do correction'.
  103.  
  104.         Once you understood the concept and have dowloaded programs
  105.         successfully, you will see that it isn't that complicated.
  106.  
  107.  
  108.         The development of 7PLUS:
  109.         =========================
  110.  
  111.         7PLUS has been developed on the basis of my previous encoder SEVEN.
  112.         The correcting capabilities had the price of incompatibility to
  113.         SEVEN, however. This isn't so grave, since 7PLUS has a lot of
  114.         advantages compared to SEVEN and now the repeated upload of files,
  115.         that were corrupted in store & forward, is a thing of the past.
  116.         Since 7PLUS was incompatible to SEVEN anyway, I implemented a
  117.         RADIX216 encoding wich allows for very compact files.
  118.         In the beginning, there was heavy opposition against 7PLUS. Some
  119.         people were convinced that an encoder that uses characters above
  120.         7Fh would create more trouble than do good. 7PLUS established
  121.         itself as THE standard encoder in Germany very quickly. This proves
  122.         the critics to be wrong. By now, 7PLUS is not only used in Germany,
  123.         but in the greater part of Europe. Even in Japan, 7PLUS has already
  124.         been 'sighted'. There even are BBSs that use 7PLUS for file serving
  125.         purposes.
  126.  
  127.  
  128.  
  129.                                       Page - 2
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.         How does the 7PLUS encoding work? (roughly)
  139.         ===========================================
  140.  
  141.         7PLUS implements a RADIX 216 encoding algorithm which only produces
  142.         a file enlargment of 3.23%. This algorithm encodes 31 input bytes
  143.         into 32 ASCII bytes. It could also be called 7-threequarter-bit-
  144.         encoding, because each digit represents that many bits of the
  145.         unencoded data. That's why it's called 7PLUS.
  146.         Line by line checksums, line numbering, line separators, header and
  147.         foot lines increase the enlargment ratio to 11 to 12%.
  148.  
  149.         Fileenlargments of other coders:
  150.  
  151.         RADIX95 : 24%
  152.         UUCODE  : 42%
  153.  
  154.  
  155.         Each digit of the resulting code has a value range of 0 trough 215.
  156.         Since this range can't be directly transmitted (contains control
  157.         characters), the code is transposed to avoid any problematic
  158.         characters.
  159.  
  160.         The resulting character set is as follows:
  161.  
  162.           21h - 29h, 2Bh- 7Eh, 80h - 90h, 92h, 94h - FCh  (including)
  163.  
  164.         These characters are left out intentionally:
  165.  
  166.         00h bis 20h: Control codes and the space character.
  167.                      Somes terminal eliminate spaces at the end of lines!
  168.  
  169.         2Ah        : Asterisk, may cause problems with some BBSs.
  170.                      e.g.'*** end'
  171.  
  172.         7Fh        : DEL, another control character.
  173.  
  174.         91h und 93h: Some phone terminals interpret these codes as XON and
  175.                      XOFF...for whatever reason??? Probably because of an
  176.                      error.
  177.  
  178.  
  179.         The only factor that can create problems with 7PLUS-files is the
  180.         fact, that characters above 7Fh are used. Some terminalprograms do
  181.         not handle these characters. Experience in Germany and the
  182.         surrounding countries has shown that all BBSs (TheBox, W0RLI,
  183.         F6FBB, AA4RE...) are capable of handling these characters and the
  184.         greater part of terminalprograms as well. Already, terminalprograms
  185.         are being updated to cope with the character set used by 7PLUS.
  186.         TNCs do not pose a problem, because they can all be configured to
  187.         handle characters above 7Fh (8BITCONV ON, AWLEN 8....).
  188.         It won't take long until all terminalprograms used in packet radio
  189.         will be capable of handling 7PLUS-files. If 7PLUS comes into wide
  190.         use like in Germany, authors of terminals will (have to) update
  191.         their software to comply with the need of data reduction.
  192.  
  193.  
  194.  
  195.                                       Page - 3
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.  
  203.         How are 7PLUS-files made up?
  204.         ============================
  205.  
  206.         7PLUS-files always start with the header line, followed by up to
  207.         512 lines of code and one foot line indicating the end of the file.
  208.         All lines are terminated with a line separator. During transmission
  209.         via packet radio, the separator is the CR character.
  210.         On Disk, the separator must comply with the individual system
  211.         (CR/LF on IBM-PC and ATARI ST, LF on AMIGA/UNIX).
  212.  
  213.  
  214.         The header:
  215.         -----------
  216.  
  217.          go_7+. 005 of 010 TEST.TXT     0010453 6488 166 (7PLUS v1.5) XXXXY
  218.         +-----+ +-+    +-+ +----------+ +-----+ +--+ +-+ +----------+ +---+
  219.            1     2      3       4          5      6   7       8         9
  220.  
  221.            1) Start indicator, beginning in the second column.
  222.            2) Part 5
  223.            3) of 10 parts.
  224.            4) Filename of the encoded File, filled up with spaces. Max 12
  225.               characters. On systems that allow longer filenames, still an
  226.               MS_DOS-compatible filename is sent here!
  227.            5) File length of the unencoded file
  228.            6) Number of ASCII-Bytes in this part (HEX)
  229.            7) Blocksize (HEX)
  230.            8) Codername and version.
  231.            9) XXXX: Testcharacters (to detect stripping of eigth bit). Also
  232.               used to indicate that the full filename follows in the next
  233.               line (only v1.4 and above). This is only the case with the
  234.               AMIGA/UNIX-version currently. This way, exchangeability of
  235.               7PLUS-files that were created on systems with different
  236.               filename structures than MS_DOS is insured.
  237.               Y: Minichecksum for the header (7PLUS v1.5 and above).
  238.  
  239.  
  240.         The code lines:
  241.         ---------------
  242.  
  243.         AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBPPP
  244.         +--------------------------------------------------------------++-+
  245.                   64 ASCII bytes, representing  62 binary bytes          *
  246.  
  247.            A: First group (32 ASCII bytes, representing 31 binary bytes).
  248.            B: Second group.
  249.            P: Checksum and line numbering.
  250.  
  251.  
  252.            Every line is made up of 64 ASCII bytes plus 3 bytes, that
  253.            contain the checksum and line number.
  254.  
  255.            The three bytes at the end of each lines are made up of a 14 bit
  256.            CRC and a 9 bit linenumber.
  257.  
  258.  
  259.  
  260.  
  261.                                       Page - 4
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.  
  269.            Each 7PLUS-file contains a maximum of 512 code lines. If more
  270.            are needed, the file is splitted.
  271.  
  272.            Thus, each 7PLUS-file can contain up to 512x62 = 31744 bytes.
  273.            With a maximum of 255 parts, 8,094,720 bytes can be handled.
  274.            This should be enough for every need.
  275.  
  276.  
  277.         The foot line:
  278.         --------------
  279.  
  280.           stop_7+. (TEST.P05)
  281.          +-------+ +--------+
  282.             1          2
  283.  
  284.            1) End indicator, beginning in the second column.
  285.            2) Filename of this part.
  286.  
  287.  
  288.         The error report:
  289.         =================
  290.  
  291.            In the case that 7PLUS-files were damaged in transit, 7PLUS
  292.            recognizes the errors and creates an error report that contains
  293.            all necessary information for creating an according correction
  294.            file.
  295.  
  296.            An error report looks like this:
  297.  
  298.             go_text. TEST.ERR
  299.            7PLUS error report: TEST.TXT 113 /Test.TXT/ 34028
  300.            01
  301.            005 006 007 03D FFF
  302.            02
  303.            10C 10D 10E FFF
  304.            00
  305.            CRC A17D
  306.             stop_text.
  307.  
  308.            The lines 'go_text.' und 'stop_text.' are used to recognize and
  309.            extract the error report from a capture file.
  310.  
  311.            The line '7PLUS error report...' contains information like:
  312.  
  313.            Name of the original file,
  314.            blocksize in wich the file was split while encoding,
  315.            the full filename (only AMIGA/UNIX)
  316.            and (from 7PLUS v1.5) the length of the original file.
  317.  
  318.            The two-digit hex values define the part in wich the following
  319.            lines were corrupted. A line number of 'FFF' is used to mark the
  320.            end of the error list for this part. '00' for the part marks the
  321.            end of the error report. In the next line a checksum for the
  322.            error report (7PLUS v1.5 and above) follows to secure it
  323.            additionally.
  324.  
  325.  
  326.  
  327.                                       Page - 5
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.         The correction file:
  337.         ====================
  338.  
  339.            After you have sent the error report to the originator of the
  340.            corrupted files, he will use it to create a correction file,
  341.            that contains all lines that were reported as damaged or
  342.            missing. He then sends the correction file back or uploads it to
  343.            the BBS if he sees that most error reports concern the same
  344.            errors. In that case the '-J' option may come in handy. He could
  345.            join different error reports and create a global correction
  346.            file.
  347.  
  348.            Example of a correction file:
  349.            (Contents of the code lines shown in brief)
  350.  
  351.             go_text. TEST.COR
  352.            7PLUS correction: TEST.TXT 34028
  353.             P01:
  354.             L005:
  355.            sdWKLRjwEK...
  356.             L006:
  357.            "rt4rWER7Z...
  358.             L007:
  359.            eeERG35ERG...
  360.             L03D:
  361.            $%&H$%6TZJ...
  362.             P02:
  363.             L10C:
  364.            AdD$%SFFDr...
  365.             L10D:
  366.            sFG$sFw4rf...
  367.             L10E:
  368.            56fZTddfDg...
  369.             P00:
  370.            CRC A9B6
  371.             stop_text.
  372.  
  373.            'go_text.', 'stop_text.' and checksum: see 'The error report'.
  374.  
  375.            The line '7PLUS correction...' contains the following
  376.            information:
  377.  
  378.            Name of the original File
  379.            and (7PLUS v1.5 and above) the length of the original file.
  380.  
  381.            A line with an entry of the from ' PXX:' defines for which of
  382.            the encoded files the following lines are meant. The coded lines
  383.            are preceded by ' LXXX:' wich states the line number in the
  384.            file. 'XX' and 'XXX' stand for two- and three-digit hex values.
  385.  
  386.            The structure of the error reports and correction files is
  387.            intentionally held very simple.
  388.  
  389.  
  390.  
  391.  
  392.  
  393.                                       Page - 6
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.  
  401.         Compatibility of 7PLUS versions:
  402.         ================================
  403.  
  404.         All files of the older versions can be decoded with the newer
  405.         versions and vice versa.
  406.  
  407.         This also counts for error reports and correction files.
  408.  
  409.         Beginning with 7PLUS v1.5, a checksum is added to the error reports
  410.         an correction files. It is only checked when present. When 7PLUS
  411.         v1.5 and newer gets files from an older version it outputs a
  412.         warning message, that no checksum was found:
  413.  
  414.         'no CRC. File may be corrupted or from version earlier
  415.          than 7PLUS v1.5'
  416.  
  417.         However, 7PLUS will continue processing the files. The warning only
  418.         means that the file may not be 100% correct. You should check those
  419.         files visually for obvious errors. Since the structure of the error
  420.         reports and correction files is very simple, it is easy to erase
  421.         the faulty lines. Mind, that if a checksum is present (CRC XXXX),
  422.         it must be erased, otherwise the file would not be accepted by
  423.         7PLUS anymore!
  424.  
  425.  
  426.         Filename conventions:
  427.         =====================
  428.  
  429.            Filenames handled by 7PLUS, must comply with the rules
  430.            concerning filename generation under MS_DOS, no matter what
  431.            system 7PLUS is implemented on. They are always made up of a
  432.            name (8 charachters max.) and an extension (3 charachters max.)
  433.            seperated by a period (.). Filenames in 7PLUS-files are always
  434.            in uppercase. On disk, lower case is used for the filenames, if
  435.            the filesystem allows this. This is very important on systems
  436.            that do not ignore the case in filenames (UNIX).
  437.  
  438.            E.g.: TERMINAL.EXE
  439.  
  440.            To enable transfer of full filenames on systems with name
  441.            structures different than MS_DOS, the full filenames are
  442.            transfered separately (see 'The header:'). At the same time, a
  443.            MS_DOS compatible filename is created to insure exchangeability.
  444.            E.g., the full filename 'Hyper_Term_Plus' would be changed into
  445.            'HYPER_TE'.
  446.  
  447.            When encoding a file without splitting it, the encoded file is
  448.            assigned '.7PL' as the extention.  (TERMINAL.7PL)
  449.  
  450.            Split files are assigned '.PXX' as the extension, where XX is a
  451.            hexadecimal number in the range 01 through FF.
  452.  
  453.            Error reports usually have '.ERR' and correction files always
  454.            have '.COR' for an extension. This is very important, because
  455.            7PLUS gets it's information on what to do from the extension! It
  456.  
  457.  
  458.  
  459.                                       Page - 7
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.  
  467.            is allowed to change names of error reports and correction
  468.            files. However, the extensions MUST be '.ERR' or '.COR'.
  469.            If you recieved a lot of error reports, there is another way of
  470.            naming the error reports. The first report will have '.err' for
  471.            an extension and the following ones will have '.eXX', where XX
  472.            ist a two-digit hex value.
  473.            Example: You received three error reports that all relate to the
  474.            same upload (TEST.7PL). When extracting through the '-X' option,
  475.            the first report will be called TEST.ERR, the second TEST.E01
  476.            and the third TEST.E02. The three reports can then easily be
  477.            joined into a combined report using the '-J' option.
  478.  
  479.            7PLUS-files should always be stored with filenames corresponding
  480.            to these rules. This is even more important in regard to split
  481.            files and correcting.
  482.  
  483.            The name under wich a 7PLUS-file should be stored can be found
  484.            at the end of each part (see 'The foot line').
  485.  
  486.  
  487.         How do i use 7PLUS?
  488.         ===================
  489.  
  490.  
  491.         Encoding:
  492.         ---------
  493.  
  494.         7plus test.txt
  495.            Encode test.txt. If the resulting file contains more than 512
  496.            lines of code, the file is automatically split into 512 line
  497.            portions.
  498.  
  499.         7plus test.txt -s
  500.            Encode and split, 140 lines per file (abt 10k/file).
  501.  
  502.         7plus test.txt -s 30
  503.            30 lines per file.
  504.  
  505.         7plus test.txt -sp 3
  506.            Encode and split into three files of roughly equal size.
  507.  
  508.  
  509.         Decoding:
  510.         ---------
  511.  
  512.         7plus test.7pl
  513.            Decode. Create error report, if test.7pl is corrupted.
  514.  
  515.         7plus test.p01
  516.            Combine and decode.            "
  517.  
  518.         7plus test
  519.            When decoding, the extension may be ommited. If 7PLUS finds
  520.            test.cor, it will do the correction first, and decode after-
  521.  
  522.  
  523.  
  524.  
  525.                                       Page - 8
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.  
  533.            wards. If a file named 'test' already exists, it will be
  534.            encoded!
  535.  
  536.  
  537.         Correcting:
  538.         -----------
  539.  
  540.         7plus test.err c:\pr\
  541.            Compile correction file test.cor. Look for test.txt in c:\pr\.
  542.            test.txt is the original binary file that was encoded in the
  543.            first place. It is not necessary to keep the encoded files after
  544.            uploading them. But you should keep the original file (test.txt
  545.            in this case) to be able to reply to error reports!
  546.            A special situation arises, when a 7PLUS-file was created on a
  547.            system with non-MS_DOS filenames.
  548.            Example:
  549.            An OM encodes 'Hyper_Term_Plus' on an AMIGA. 7PLUS will create
  550.            the MS_DOS-kompatible name 'HYPER_TE' (The full AMIGA-filename
  551.            ist also passed along in the file, but the PC and ATARI_ST
  552.            version ignore it). If someone decodes the file using an older
  553.            version of 7PLUS (before 1.4) and errors are present in the
  554.            file, the error report 'HYPER_TE.ERR' will be created. If he
  555.            sends it to the AMIGA-user, 7PLUS will try to find 'HYPER_TE'
  556.            while creating the correction file and will probably not find
  557.            it. In this case, the full path and filename can be specified:
  558.            Example: 7plus hyper_te.err df0:utils/Hyper_Term_Plus
  559.            If 7PLUS v1.4 (or newer) was used, this problem does not arise,
  560.            because the full original filename is passed along with the
  561.            MS_DOS compatible filename in the error report - even if it
  562.            isn't evaluated otherwise on the PC and ATARI_ST version.
  563.  
  564.         7plus test.cor
  565.            Repair test.7pl/test.pXX, using test.cor. It may happen, that
  566.            not all errors are covered by the correction file. In that case
  567.            decode the files to create a new error report. Send it to the
  568.            originator for additoinal correction.
  569.  
  570.  
  571.         7plus test.err test2.err -j
  572.            The contents of test2.err are added to those of test.err. this
  573.            ist useful, when many error reports were recieved. You can
  574.            create a combined error report that in turn can be used to
  575.            compile a correction files that covers all reported errors. Mind
  576.            that error reports that contain an unusually large number of
  577.            error lines should be answered individually!
  578.  
  579.         7plus test.err -j
  580.            This is a special form of joining error reports. 7PLUS will look
  581.            for test.e01 first and join it to test.err, then for test.e02
  582.            and so on.... It is important for this, that the error reports
  583.            were extracted from a capturefile using the '-X' option!
  584.            After this action test.err will represent the sum of all error
  585.            reports.
  586.  
  587.  
  588.  
  589.  
  590.  
  591.                                       Page - 9
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.  
  599.         7PLUS-file extractor:
  600.         ---------------------
  601.  
  602.         7plus capturefile text -x
  603.         'cuts' all 7PLUS-files from a capturefile and saves them
  604.         seperately. if a text is specified, only those files will be
  605.         extracted, that contain text in their names.
  606.  
  607.         E.g.: 7plus spsave.c10 952.err -x
  608.               Extracts all error reports that have '952.err' in their
  609.               filenames.
  610.  
  611.         If a fictive text is specified (e.g. '###'), no files are
  612.         extracted, but you get a list of the files contained in the
  613.         capturefile.
  614.  
  615.         It is irrelevant, what kind of line seperator is contained in the
  616.         capturefile: CR/LF, CR or LF. The extracted files however will have
  617.         line seperators that comply with the used system. That is CR/LF on
  618.         IBM PC and ATARI ST, LF on AMIGA/UNIX. This way, there is no need
  619.         to use an editor to cut out the files from the logfile and correct
  620.         generation of filenames is guaranteed. This is particularly
  621.         important with split files.
  622.         Also, error reports and correction files are extracted. This will
  623.         only work, if the markings (go_text., stop_text.) are present!
  624.  
  625.  
  626.         Additional options:
  627.         -------------------
  628.         -N (only ATARI_ST version) Normally 7PLUS prompts for a key hit
  629.            after termination. The '-N' option will switch off this prompt.
  630.            This is useful when 7PLUS is invoked by another program (shell).
  631.  
  632.         -P Encoded files, error repors and correction files will be written
  633.            with CR as line separator. This is necessary with those terminal
  634.            programs, where 7PLUS-files must be sent using the unprotocolled
  635.            binary transfer option, because it can't handle 8 bit characters
  636.            in textmode. This is even more important on the AMIGA or under
  637.            UNIX , because the standard line separator there is LF!
  638.            Uploading a file in binary mode, that has LF as a line
  639.            separator, would create a useless file on the other side,
  640.            because LFs are alway stripped. The standard line separator in
  641.            Packet Radio is CR! The result would be a file that contains one
  642.            extremely long line!
  643.  
  644.         -T This option can be used to append a file termination string to
  645.            encoded files, error reports and correction files.
  646.  
  647.            Example: 7plus test.txt -sp 2 -p -t /ex
  648.  
  649.         -Y Assume YES on all queries. This option is useful, when 7PLUS is
  650.            invoked from another program (shell, server).
  651.  
  652.         -# This option is intended for use of 7PLUS in a server. When
  653.            encoding, 7PLUS will create '7plus.fls', wich will contain the
  654.  
  655.  
  656.  
  657.                                       Page - 10
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664.  
  665.            number of files that were created and the MS_DOS-compatible
  666.            name, e.g.: 10 TEST
  667.  
  668.         A summary of command line options can be obtained by invoking 7PLUS
  669.         without parameters.
  670.  
  671.         Tips:
  672.         =====
  673.  
  674.         Make sure your tnc/terminal combination is capable of handling the
  675.         7PLUS character set described above. It is important to set all
  676.         parameters relating to 8 bit characters correctly (8BITCONV ON,
  677.         AWLEN 8....). The streamswitch character should be set to $01
  678.         (CTRL-A), because 7PLUS uses all printable characters. Otherwise,
  679.         unwanted streamchanges could occur, when uploading 7PLUS-files.
  680.         Also, ensure that the RS232 link ist set to 8 data bits.
  681.  
  682.         If you still are not able to handle 7PLUS-files, get in touch with
  683.         the author of your terminalprogram. since it is in his best
  684.         interest that his program is able to cope with all eventuallities,
  685.         i am convinced he will make sure it is updated.
  686.  
  687.  
  688.         YAPP:
  689.         -----
  690.  
  691.         Some old YAPP-version will strip bit 8.... Get a newer one.
  692.  
  693.  
  694.         Non-W0RLI(MSYS)/AA4RE/F6FBB/TheBox-BBSs:
  695.         ----------------------------------
  696.  
  697.         Some of these BBS-clones strip bit 8! This was reported to me from
  698.         Hungaria. The Author of that BBS is working on it already.
  699.         In the UK, there are BBSs around, that will strip all charachters
  700.         in the range E0h to FFh. The Problem is already being investigated.
  701.         Also, there are BBSs that strip the FEh charachter. This is no
  702.         problem, because 7PLUS does not use this charachter.
  703.  
  704.  
  705.         Warning: TheFirmware/WA8DED firmware
  706.         ------------------------------------
  707.  
  708.         Can't handle 7PLUS-files in terminalmode, unless patched or if
  709.         TheFirmware v2.2a DAMA (NORD><LINK, Germany) or newer is used.
  710.         Since this firmware is primarilly devised for host mode operation
  711.         and should be used that way, this does not pose a problem.
  712.  
  713.  
  714.         7PLUS on AMIGA:
  715.         ---------------
  716.  
  717.         Most terminal program for the AMIGA computer can't handle 7PLUS-
  718.         files in textmode. This is because, most of them interpret the
  719.         AMIGA control characters in the range 80h-9Fh. It would be wiser to
  720.  
  721.  
  722.  
  723.                                       Page - 11
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730.  
  731.         display them in an appropriate way by replacing them by unproble-
  732.         matic characters and not interpret them as control characters.
  733.         Because of this fact, 7PLUS-files should be downloaded in binary
  734.         mode. To be able to decode them, it is necessary to use the '-X'-
  735.         option of 7PLUS to extract them from the logfile. Editing the files
  736.         is not required then.
  737.  
  738.         When uploading 7PLUS-files in binary mode, the AMIGA line seperator
  739.         LF must be replaced by the seperator required by packet: CR.
  740.         This can be done using the '-p'-option of 7PLUS.
  741.  
  742.  
  743.  
  744.         How to download 7PLUS-files from a BBS:
  745.         =======================================
  746.  
  747.         Before downloading huge files from the BBS, you must make sure your
  748.         terminalprogram and tnc are correctly configured.
  749.         For this purpose you find ASC.TXT in the distribution archive of
  750.         7PLUS. Upload it to the BBS addressed to yourself and download it
  751.         again. If it doesn't look like the original any more, check your
  752.         configuration and read the chapter 'Tips:'.
  753.  
  754.         If the test went ok, then you're set to download 7PLUS-files.
  755.  
  756.         The simplest way to download 7PLUS-files is to open a capturefile
  757.         and continuously write the received files into it. Note that you
  758.         should not call the capturefile the same as the 7PLUS-files you
  759.         download! Use a name like 'savefile' for instance.
  760.  
  761.         When you have finished downloading the files (did you think of
  762.         looking for correction files that may already be in the BBS?), you
  763.         must extract them from the capturefile. For this, an editor can be
  764.         used or - much more convenient - 7PLUS itself! 7PLUS will not only
  765.         find and extract the files from the capturefile, but also create
  766.         the correct filenames for them.
  767.  
  768.         Invoking 7PLUS like this: '7plus savefile -x' will do the job of
  769.         extracting the files from the capturefile.
  770.  
  771.         Now, the files are in the format that 7PLUS needs and you can begin
  772.         decoding.
  773.  
  774.         Let's see, what we have on disk now:
  775.         (This is only an example)
  776.  
  777.         TERM952.P01
  778.         TERM952.P02
  779.         TERM952.P03
  780.         TERM952.P04
  781.         TERM952.COR
  782.  
  783.  
  784.         Ah, fine... You thought of downloading the correction file that was
  785.         already in the BBS.
  786.  
  787.  
  788.  
  789.                                       Page - 12
  790.  
  791.  
  792.  
  793.  
  794.  
  795.  
  796.  
  797.  
  798.         There are two ways of decoding these files now:
  799.  
  800.         '7plus term952.cor' <-- Do the correction.
  801.         '7plus term952.p01' <-- Decode.
  802.  
  803.         or
  804.  
  805.         '7plus term952'     <-- 7PLUS does all by itself.
  806.  
  807.         Be careful about the second way, if a file called 'term952' already
  808.         exists in the current directory, 7PLUS would then not try to decode
  809.         'term952.p01', but encode 'term952'! This is why i pointed out,
  810.         that you should use a name for the capturefile, that has no
  811.         relation to the name of the 7PLUS-files.
  812.  
  813.         If decoding went ok, 7PLUS will tell you:
  814.  
  815.         'Decoding succesful! 'term952.exe' 43210 Bytes.'
  816.  
  817.         TERM952.EXE is the decoded file. What you have to do from now,
  818.         depends entirely on the hints from it's originator. As the author
  819.         of 7PLUS, i don't have anything to do with it anymore from this
  820.         point on.
  821.  
  822.         Let's suppose decoding did not go allright.
  823.  
  824.         7PLUS says:
  825.  
  826.         'Decoding not successful.
  827.          Send error report 'term952.err' to originator of 'term952.exe'
  828.          for correction.'
  829.  
  830.         This just means, that you should take 'term952.err' and shove
  831.         it...errr... i mean send it to the originator of 'term952.exe' and
  832.         wait for the correction file to return from him.
  833.  
  834.         In the past it happened that OMs sent me error reports of programs
  835.         I have never uploaded and requested the according correction files
  836.         from me! Let me say this again in full clarity: The one who
  837.         uploaded the files that were corrupted in store&forward is the one
  838.         you have to send the error reports to!!! I, as the author of the
  839.         encoder used, have nothing to do with it. Comparison: A forwarding
  840.         agency delivers goods that were damaged on the transport. No-one in
  841.         his right mind would have the idea to hold the builder of the truck
  842.         used for the transport (Me) liable, when the truck (7PLUS) is ok,
  843.         but the roads (the network) are not....
  844.  
  845.  
  846.         How to upload 7PLUS-files to a BBS:
  847.         ===================================
  848.  
  849.         As in the previous chapter, make sure your terminal and tnc are
  850.         configured correctly to handle 7PLUS-files. If you don't take all
  851.  
  852.  
  853.  
  854.  
  855.                                       Page - 13
  856.  
  857.  
  858.  
  859.  
  860.  
  861.  
  862.  
  863.         precautions, the files may not be decodable. So, avoid frustrating
  864.         the other users an think before acting.
  865.  
  866.         You should write a small info in which you explain, what program is
  867.         contained in the files you upload. State what system the program is
  868.         for, what hardware is needed, and what compressor (LHARC, LHA,
  869.         PKZIP) was used, and what files are in the archive and last but not
  870.         least what encoder was used for the upload (7PLUS in this case).
  871.         This way one can see right away, if the program is any use for him.
  872.         The title of this info should be brief but yet state all needed
  873.         info, e.g.:
  874.  
  875.         'TERM952.EXE Info'
  876.  
  877.         When uploading to a general purpose board (ALL, SOFTWA..) you
  878.         should also state the system the program runs on:
  879.  
  880.         'TERM952.EXE Info (IBM)'
  881.  
  882.         OK, now you can do the encoding. Bear in mind that some BBSs
  883.         restrict the size of bulletins. Ask your SYSOP about this. Take
  884.         this into regard when splitting the file up ('-s' or '-sp' option).
  885.  
  886.         Let's say, TERM952.EXE has a size of 43210 bytes. When encoded, the
  887.         size will increase by about 11% to 48k. Let's also say, the maximum
  888.         size of the bulletins should be 4k. Then you should split into 12
  889.         parts using the '-sp' option or into blocks of about 4k using the
  890.         '-s 60' option.
  891.  
  892.         '7plus term952.exe -sp 12' or
  893.         '7plus term952.exe -s 60'
  894.  
  895.         OK, encoding is done. You should have the files TERM952.P01 through
  896.         TERM952.P0C (note the hexadecimal numbering!!!!) on disk. The files
  897.         can now be uploaded seperately. Here also, you should choose an
  898.         informative title:
  899.  
  900.         'TERM952.P01 / 0C (7PLUS)
  901.  
  902.         Means: TERM952 is encoded with 7PLUS and it's the first file of 12
  903.         (0C hex) parts.
  904.  
  905.         Even better, but somewhat cryptic to newcomers:
  906.  
  907.         'TERM952.EXE.P01/0C.7PL'
  908.  
  909.         The best way to read this, is from the rear: it is a 7PLUS-file,
  910.         the first of a 12 part upload, and the resulting program is called
  911.         TERM952.EXE.
  912.  
  913.         After uploading all the files, you should check them by downloading
  914.         them right away. They could have become corrupted on the way from
  915.         your terminal to the BBS! In case they really were corrupted,
  916.         generate a correction file and upload it. It is not really
  917.         necessary to upload the entire file that was corrupted.
  918.  
  919.  
  920.  
  921.                                       Page - 14
  922.  
  923.  
  924.  
  925.  
  926.  
  927.  
  928.  
  929.  
  930.         And now: wait for error reports......
  931.  
  932.  
  933.  
  934.  
  935.  
  936.         7PLUS can be compiled on IBM-PC, ATARI-ST, AMIGA and UNIX-systems.
  937.         See notes in the source code.
  938.  
  939.         7PLUS is written for ham use and therefore costs nothing. It may be
  940.         distributed and copied freely, but only in its entirety. That is
  941.         including source code and DOCs. Use of 7PLUS in commercial surroun-
  942.         dings is not allowed and no fee may be charged for 7PLUS.
  943.  
  944.  
  945.         73s, Axel in Bremerhaven, DG1BBQ @DB0CL.DEU.EU
  946.  
  947.  
  948.  
  949.  
  950.  
  951.  
  952.  
  953.  
  954.  
  955.  
  956.  
  957.  
  958.  
  959.  
  960.  
  961.  
  962.  
  963.  
  964.  
  965.  
  966.  
  967.  
  968.  
  969.  
  970.  
  971.  
  972.  
  973.  
  974.  
  975.  
  976.  
  977.  
  978.  
  979.  
  980.  
  981.  
  982.  
  983.  
  984.  
  985.  
  986.  
  987.                                       Page - 15
  988.  
  989.